Method and apparatus for correcting multipath offset and determining wireless station locations

ABSTRACT

Embodiments include methods, systems and computer readable storage medium for determining a location for one or more wireless stations or access points. The method includes receiving, by a processor, trace data from one or more vehicles. The method further includes performing, by the processor, a particle filtering analysis on the trace data. The method further includes determining, by the processor, a location for the one or more wireless stations or access points.

CROSS REFERENCE TO RELATED APPLICATION

This application claims the benefit of U.S. Provisional PatentApplication Ser. No. 62/764,741 filed Aug. 15, 2018 which isincorporated herein by reference in its entirety.

INTRODUCTION

The subject disclosure relates to mapping and navigation, and morespecifically to determining a location for a public wireless stationusing vehicle trace data.

Autonomous vehicles are automobiles that have the ability to operate andnavigate without human input. Autonomous vehicles, as well as somenon-autonomous vehicles, use sensors, such as cameras, radar, LIDAR,global positioning systems, and computer vision, to detect the vehicle'ssurroundings. Advanced computer control systems interpret the sensoryinput information to identify a vehicle's location, appropriatenavigation paths, as well as obstacles and relevant signage. Someautonomous vehicles update map information in real time to remain awareof the autonomous vehicle's location even if conditions change or thevehicle enters an uncharted environment. Autonomous vehicles as well asnon-autonomous vehicles increasingly communicate with remote computersystems and with one another using V2Xcommunications—Vehicle-to-Everything, Vehicle-to-Vehicle (V2V),Vehicle-to-Infrastructure (V2I)).

SUMMARY

In accordance with one or more embodiments, a method determining alocation for one or more wireless stations or access points isdisclosed. The method includes receiving, by a processor, trace datafrom one or more vehicles. The method further includes performing, bythe processor, a particle filtering analysis on the trace data. Themethod further includes determining, by the processor, the location forthe one or more wireless stations or access points.

In accordance with one or more embodiments or the method embodimentabove, the method can include determining a location of one or morevehicles using the location for the one or more wireless stations oraccess points.

In accordance with one or more embodiments or any of the methodembodiments above, the particle filtering analysis can includegenerating or re-regenerating samples from the trace data, calculatingand associating a weight with each of the samples, and iterating thegenerating or re-regenerating or the samples and the calculating andassociating of the weight until a probability distribution of thesamples is obtained.

In accordance with one or more embodiments or any of the methodembodiments above, the weight calculation can include a multipathmitigation determination.

In accordance with one or more embodiments or any of the methodembodiments above, the multipath mitigation determination can be basedon Channel State Information.

In accordance with one or more embodiments or any of the methodembodiments above, the multipath mitigation determination can be basedon a received signal strength indication.

In accordance with one or more embodiments or any of the methodembodiments above, the received signal strength indication can be usedto infer line of sight conditions.

In accordance with one or more embodiments, a system for determining alocation for one or more wireless stations or access points isdisclosed. The system includes one or more vehicles. Each vehicleincludes a first memory and a first processor coupled to the firstmemory. The system includes one or more cloud computers. Each cloudcomputer includes a second memory and a second processor coupled to thesecond memory. Each second processor is operable to perform receivingtrace data from the one or more vehicles, performing a particlefiltering analysis on the trace data, and determining the location forthe one or more wireless stations or access points.

In accordance with one or more embodiments or the system embodimentabove, each second processor can be operable to determine a location ofone or more vehicles using the location for the one or more wirelessstations or access points.

In accordance with one or more embodiments or any of the systemembodiments above, the particle filtering analysis can includegenerating or re-regenerating samples from the trace data, calculatingand associating a weight with each of the samples, and iterating thegenerating or re-regenerating or the samples and the calculating andassociating of the weight until a probability distribution of thesamples is obtained.

In accordance with one or more embodiments or any of the systemembodiments above, the weight calculation can include a multipathmitigation determination.

In accordance with one or more embodiments or any of the systemembodiments above, the multipath mitigation determination can be basedon Channel State Information.

In accordance with one or more embodiments or any of the systemembodiments above, the multipath mitigation determination can be basedon a received signal strength indication.

In accordance with one or more embodiments or any of the systemembodiments above, the received signal strength indication can be usedto infer line of sight conditions.

In accordance with one or more embodiments, a non-transitory computerreadable storage medium is disclosed. The non-transitory computerreadable storage medium includes program instructions for determining alocation for one or more wireless stations or access points embodiedtherewith. The program instructions are readable by a processor to causethe processor to perform receiving trace data from one or more vehicles,performing a particle filtering analysis on the trace data, anddetermining the location for the one or more wireless stations or accesspoints.

In accordance with one or more embodiments or the non-transitorycomputer readable storage medium embodiment above, the programinstructions readable by the processor to cause the processor todetermine a location of one or more vehicles using the location for theone or more wireless stations or access points.

In accordance with one or more embodiments or any of the non-transitorycomputer readable storage medium embodiments above, the particlefiltering analysis can include generating or re-regenerating samplesfrom the trace data, calculating and associating a weight with each ofthe samples, and iterating the generating or re-regenerating or thesamples and the calculating and associating of the weight until aprobability distribution of the samples is obtained.

In accordance with one or more embodiments or any of the non-transitorycomputer readable storage medium embodiments above, the weightcalculation can include a multipath mitigation determination.

In accordance with one or more embodiments or any of the non-transitorycomputer readable storage medium embodiments above, the multipathmitigation determination can be based on Channel State Information.

In accordance with one or more embodiments or any of the non-transitorycomputer readable storage medium embodiments above, the multipathmitigation determination can be based on a received signal strengthindication.

In accordance with one or more embodiments or any of the non-transitorycomputer readable storage medium embodiments above, the received signalstrength indication can be used to infer line of sight conditions.

The above features and advantages, and other features and advantages ofthe disclosure are readily apparent from the following detaileddescription when taken in connection with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Other features, advantages and details appear, by way of example only,in the following detailed description, the detailed descriptionreferring to the drawings in which:

FIG. 1 is a computing environment according to one or more embodiments;

FIG. 2 is a block diagram illustrating one example of a processingsystem according to one or more embodiments;

FIG. 3 depicts a route traversal according to one or more embodiments;

FIG. 4 depicts flow diagram of a method for particle filtering accordingto one or more embodiments; and

FIG. 5 depicts a flow diagram of a method for determining a location fora wireless station and using the location to determine a vehiclelocation according to one or more embodiments.

DETAILED DESCRIPTION

The following description is merely exemplary in nature and is notintended to limit the present disclosure, its application or uses. Itshould be understood that throughout the drawings, correspondingreference numerals indicate like or corresponding parts and features. Asused herein, the term module refers to processing circuitry that mayinclude an application specific integrated circuit (ASIC), an electroniccircuit, a processor (shared, dedicated, or group) and memory thatexecutes one or more software or firmware programs, a combinationallogic circuit, and/or other suitable components that provide thedescribed functionality.

Recent years have seen a dramatic increase in the use of mobileplatforms incorporating both wireless networking capabilities (e.g.,IEEE 802.11 protocol standards, herein referred to as Wi-Fi) and globalpositioning system (GPS) capabilities. Such mobile platforms include,for example, mobile computing devices (such as laptop computers, tabletcomputers, smartphones, etc.) and various systems of transportation(automotive vehicles, buses, motorcycles, and the like). In instanceswhere GPS information is not available, or when it is not desirable toenable the GPS capabilities of such mobile platforms (e.g., due tobattery life concerns), the position of the mobile platform may beestimated using information relating to one or more network accesspoints (e.g., Wi-Fi access points conforming to one or more of the IEEE802.11 family of standards) within range of the mobile platform. Thatis, if it is determined that a mobile platform is within range ofmultiple access points with known geographical locations, and thoseranges are known (e.g., through time-of-flight (ToF) measurements) theposition of the mobile platform itself may be estimated based on therange information. The accuracy of such position estimates are limited,however, by the accuracy of the access point positions themselves. Whileobtaining location information for access points may be performed usingvehicle data, such a method may be susceptible to errors due to receiptof multipath signals by the access point.

In accordance with an exemplary embodiment, FIG. 1 illustrates acomputing environment 50 associated with a system for malicious basicsafety message detection using an angle of arrival. As shown, computingenvironment 50 comprises one or more computing devices, for example, aserver/Cloud 54B, and/or an automobile onboard computer system 54Nincorporated into each of a plurality of autonomous or non-autonomousvehicles, which are connected via network 150. The one or more computingdevices can communicate with one another using network 150.

The network 150 can be, for example, a cellular network, a local areanetwork (LAN), a wide area network (WAN), such as the Internet andWi-Fi, a dedicated short range communications network (for example, V2Vcommunication (vehicle-to-vehicle), V2X communication (i.e.,vehicle-to-everything), V2I communication (vehicle-to-infrastructure),and V2P communication (vehicle-to-pedestrian)), or any combinationthereof, and may include wired, wireless, fiber optic, or any otherconnection. The network 150 can be any combination of connections andprotocols that will support communication between server/Cloud 54B,and/or the plurality of vehicle on-board computer systems 54N,respectively.

The vehicle on-board computer systems 54N for each of the plurality ofvehicles can include a GPS transmitter/receiver (not shown) which isoperable for receiving location signals from a plurality of GPSsatellites (not shown) that provide signals representative of a locationfor each of the mobile resources, respectively. In addition to the GPStransmitter/receiver, each vehicle associated with one of the pluralityof vehicle on-board computer systems 54N may include a navigationprocessing system that can be arranged to communicate with aserver/Cloud 54B through the network 150. Accordingly, each vehicleassociated with one of the plurality of vehicle on-board computersystems 54N is able to determine location information and transmit thatlocation information to the server/Cloud 54B or another vehicle on-boardcomputer system 54N.

The vehicle on-board computer system 54N may also include one or moreactive and passive sensors (e.g., radar, LIDAR, cameras (internal andexternal), weather, longitudinal acceleration, voice recognition, or thelike). The vehicle on-board computer system 54N may also include one ormore microphones and a speech processing application.

Additional signals sent and received may include data (e.g., image dataobtained from cameras associated with the vehicle on-board computersystem 54N), communication, and/or other propagated signals (e.g.,signals associated with LIDAR and/or radar). Further, it should be notedthat the functions of transmitter and receiver can be combined into asignal transceiver.

The vehicle on-board computer system 54N and server/Cloud 54B may bothinclude memory components that store high-definition map data and canalso include processing components that process the high-definition mapdata. For example, each vehicle can store high-definition map datawithin a non-volatile memory. The vehicle on-board computer system 54Nand server/Cloud 54B may both store the same or similar informationrelated to map data and routing information.

When a cloud is employed instead of a server, the server/Cloud 54B canserve as a remote compute resource. The server/Cloud 54B can beimplemented as a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service.

In accordance with an exemplary embodiment, FIG. 2 illustrates aprocessing system 200 for implementing the teachings herein. Theprocessing system 200 can form at least a portion of the one or morecomputing devices, such as server/Cloud 54B, and/or vehicle on-boardcomputer system 54N. The processing system 200 may include one or morecentral processing units (processors) 201 a, 201 b, 201 c, etc.(collectively or generically referred to as processor(s) 201).Processors 201 are coupled to system memory 202 and various othercomponents via a system bus 203. The system memory 202 can include aread only memory (ROM) 204, can include a random access memory (RAM)205; and can include a basic input/output system (BIOS), which controlscertain basic functions of the processing system 200.

FIG. 2 further depicts a network adapter 206 and an input/output (I/O)adapter 207 coupled to the system bus 203. The I/O adapter 207 may be asmall computer system interface (SCSI) adapter that communicates with amass storage 208, which can include a hard disk 209 and/or other storagedrive or any other similar component. An operating system 210 forexecution on the processing system 200 may be stored in the mass storage208. The network adapter 206 interconnects the system bus 203 with anoutside network 211 enabling the processing system 200 to communicatewith other such systems.

A display adaptor 212 can connect a screen 215 (e.g., a display monitor)to the system bus 203 by display adaptor 212, which may include agraphics adapter to improve the performance of graphics intensiveapplications and a video controller. In one embodiment, adapters 207,206, and 212 may be connected to one or more I/O busses that areconnected to the system bus 203 via an intermediate bus bridge. SuitableI/O buses for connecting peripheral devices such as hard diskcontrollers, network adapters, and graphics adapters typically includecommon protocols, such as the Peripheral Component Interconnect (PCI).Additional input/output devices are shown as connected to the system bus203 via a user interface adapter 220. A keyboard 221, mouse 222, andspeaker 223 can all be interconnected to the system bus 203 via the userinterface adapter 220, which may include, for example, a Super I/O chipintegrating multiple device adapters into a single integrated circuit.

The processing system 200 may additionally include a graphics-processingunit 230. Graphics processing unit 230 is a specialized electroniccircuit designed to manipulate and alter memory to accelerate thecreation of images in a frame buffer intended for output to a display.In general, graphics-processing unit 230 is very efficient atmanipulating computer graphics and image processing, and has a highlyparallel structure that makes it more effective than general-purposeCPUs for algorithms where processing of large blocks of data is done inparallel.

Thus, as configured in FIG. 2, the processing system 200 includesprocessing capability in the form of processors 201, storage capabilityincluding the system memory 202 and the mass storage 208, input meanssuch as the keyboard 221 and the mouse 222, and output capabilityincluding the speaker 223 and the display 215. In one embodiment, aportion of the system memory 202 and the mass storage 208 collectivelystore the operating system 210 to coordinate the functions of thevarious components shown in FIG. 2.

FIG. 3 depicts a route traversal 300 according to one or moreembodiments. As a vehicle (e.g., vehicle 305), travels along a roadnetwork, the vehicle 305 can collect, send and receive information,which can be used to locate the vehicle on the road network and assistin the operation of the vehicle. The vehicle 305 can sensor data fromthe vehicle on-board computer system 54N to the server/Cloud 54B. Forexample, the vehicle 305 can collect and determine ToF distancemeasurements to one or more wireless stations or access points 310. ToFrelates to measurements of the time it takes for a signal to travelbetween the vehicle 305 and the one or more wireless stations or accesspoints 310. The ToF data can be used to triangulate a locationassociated with the vehicle 305. The ToF measurements can be acquiredusing any suitable Wi-Fi standard, for example, 802.11mc. The ToFdistance measurements can be combined with other sensor data to formtrace data.

The trace data can be sent from the vehicle on-board computer system 54Nto the server/Cloud 54B using any suitable communications protocol, forexample, Long-Term Evolution (LTE) wireless communications. The tracedata can additionally include a list of data points in which each datapoint includes data collected by the vehicle 305 at a particular time(i.e., a timestamp). The data collected can include, for example, GPScoordinates, GPS errors, vehicle speed, vehicle yaw rate, ToF distancemeasurements, radio physical layer readings (such as a received signalstrength indication (RSSI), Power-delay Profiling, other physical layindicator ions, etc., such as Doppler drift, Doppler spread, coherencetime, and coherence bandwidth), or the like.

Upon receipt of the trace data for vehicle 305, the server/Cloud 54B cananalyze the trace data of vehicle 305, as well as the trace data ofother vehicles to determine a location/position of wireless stations(e.g., one or more wireless stations or access points) along the roadnetwork. The server/Cloud 54B can determine positioning data for eachvehicle, as well as perform a particle filtering analysis on the tracedata to determine a location associated with a wireless station (e.g.,one or more wireless stations or access points).

FIG. 4 depicts a method 400 for particle filtering according to one ormore embodiments. At block 405, Cloud 54B may include computer-readableinstructions that, in response to execution by one or more processor(s),cause operations to be performed including receiving trace data havingtrace data points from one or more vehicles. At block 410, the Cloud 54Bcan re-generate particles/samples (samples) associated with each traceof associated trace data. Each sample can be associated with each signaltransmission and/or receipt between a vehicle and a Wi-Fi location. Atblock 415, the server/Cloud 54 can calculate a weight for each sample.

A weight calculation can be based on Equation 1:

w ^([j]) =f(j,trace)  Equation 1

Note that weight for sample j can be a function of sample j and a traceof data points received from a vehicle. The weight function can be basedon Equation 2:

$\begin{matrix}{w^{\lbrack j\rbrack} = \frac{1}{\sum_{i \in {trace}}{{error}\left( {i,j} \right)}}} & {{Equation}\mspace{14mu} 2}\end{matrix}$

where j is a sample and i is a data point for a vehicle. The errorfunction is a function of measurement errors between sample j and datapoint i.

An exemplary error function can be based on Equation 3:

$\begin{matrix}{{{error}\left( {i,j} \right)} = \left\{ \begin{matrix}{{{m_{i} - x_{j}}}^{2 \cdot {GPSF}_{i}},} & {{{if}\mspace{14mu} \left( {m_{i} - x_{j}} \right)} < 0} \\{{{m_{i} - x_{j}}}^{2 \cdot {LOSF}_{i} \cdot {GPSF}_{i}},} & {{{if}\mspace{14mu} \left( {m_{i} - x_{j}} \right)} > 0}\end{matrix} \right.} & {{Equation}\mspace{14mu} 3}\end{matrix}$

where m_(i) is a ToF distance measurement for data point i, x_(j) is adistance from sample to data point i, GPSF_(i) is a GPS Signal StrengthFactor for data point i (GPSF_(i)∈[0,1],]0—weak, 1—strong) and LOSF_(i)is a Line-of-Sight Factor for data point i. The errors between sample jand data point i can be related to multipath signals. Note that theequations here may include variations to achieve the same technicalobjectives. Also, note that iterating the generating or re-regeneratingor the samples (as described in block 410) and the calculating andassociating of the weight (as described in block 415) until aprobability distribution of the samples is obtained.

Multipath signals are signals that reach a receiving antenna (e.g., anantenna associated with the Wi-Fi) through two or more paths. Causes ofmultipath can include atmospheric ducting, ionospheric reflection andrefraction, and reflection from water bodies, mountains and otherobjects. In an urban setting, the multipath signals can be caused bybuildings, other vehicles or the like.

The GPSF can be retrieved from a GPS receiver of an associated vehicleand have normalized values ranging from 0 to 1, where 1 indicates astrong signal and 0 indicates a weak signal. The LOSF can have a rangebetween 0 and 1 where 0 indicates that line of sight (LOS) signals areblocked and 1 indicates a strong LOS signal. Accordingly, the exemplaryerror function can represent a least-square fitting scenario in whichLOSF=1 and GPSF=1.

If (m_(i)−x_(j))<0, the LOS is likely to be closer to 1. Accordingly, aleast-square fitting is applied to the sample. If (m_(i)−x_(j))>0, theLOS is likely to be closer to 0, i.e., a no LOS (NLOS) measurement.Accordingly, a contribution to the weight of the sample is reducedexponentially.

The LOSF can be calculated using a variety of equations. A firstexemplary LOSF calculation (i.e., an Energy of Direct Path calculation)can be according to Equation 4:

$\begin{matrix}{{LOSF} = \frac{EDP}{RSSI}} & {{Equation}\mspace{14mu} 4}\end{matrix}$

where EDP is an energy of direct path, which can be collected by a Wi-Fichipset of a vehicle, attached to a data point, and uploaded to Cloud54B. RSSI is a received signal strength indication. EDP can be derivedfrom Channel State Information (CSI) associated with chipsets associatedwith an automobile onboard computer system 54N.

A second exemplary LOSF calculation (i.e., RRSI statistical learningcalculation) can be according to Equation 5:

$\begin{matrix}{{LOSF} = \frac{\sigma_{rssi}}{\sigma_{{rssi}\_ i}}} & {{Equation}\mspace{14mu} 5}\end{matrix}$

where σ_(rssi) is a reference RSSI standard deviation and σ_(rssi_i) isthe RSSI standard deviation at the position of data point i. σ_(rssi)can be an empirical value based on large scale experiments. σ_(rssi_i)can be calculated using crowd-sourced RSSI measurements (i.e., get allRSSI readings from previously uploaded vehicle traces and calculate avariance of all RSSI readings centered at a position of data point iwithin a radius r). The second exemplary LOSF calculation is beneficialwhen there is need to identify affected by constant scatters, such asbuildings, walls, etc.

A third exemplary LOSF calculation (i.e., Neighboring MeasurementVerification (Displacement Limit)) can be according to Equation 6:

$\begin{matrix}{{LOSF} = \frac{m_{i}^{\prime}}{m_{i}}} & {{Equation}\mspace{14mu} 6}\end{matrix}$

where m′_(i) is a verified distance and m_(i) is a distance measurementof data point i. The third exemplary LOSF calculation can entail gettingall the verified distances for data points from previously uploadedtraces, calculating data point i's verified distance:

${m_{i}^{\prime} = {\max\limits_{k \in N}\left( {m_{k}^{\prime} + d_{ki}} \right)}},$

N is me set of neighboring data points within a radius and saving theverified distance data point i for future use.

At block 420, the server/Cloud 54B outputs an estimated position (withrespect to the weighted samples). For example, by mitigating multipathsignals through the removal of the multipath signals from considerationwhen determining a Wi-Fi location, signal data used to determine Wi-Filocations is improved and a more accurate Wi-Fi location can beestablished.

FIG. 5 depicts a flow diagram of a method 500 for determining a locationfor a wireless station (e.g., one or more wireless stations or accesspoints) and using the location to determine a vehicle location accordingto one or more embodiments. At block 505, a computing device, forexample, the server/Cloud 54B, can receive trace data from one or morevehicles. The received trace data can include a list of data points.Each data point can include timestamp information, GPS coordinates, GPSerrors, vehicle speed, vehicle yaw rate, ToF distance measurements,radio physical layer readings (such as RSSI, Power-delay Profiling),etc. At block 510, the server/Cloud 54B performs a particle filteringanalysis on the received trace data. The particle filtering analysis canweight samples associated with each trace and remove multipath signalsfrom the received trace data. At block 515, the server/Cloud 54B canalso calculate a Wi-Fi location based on a particle filtering analysisof the trace data. At block 520, the server/Cloud 54B can store theWi-Fi location information. At block 525, the server/Cloud 54B candetermine a location of one or more vehicles 305 using the stored Wi-Filocation information. Accordingly, location information for a vehiclecan be determined despite GPS information not being available, or whenit is not desirable to enable the GPS capabilities for the vehicle usingWi-Fi location information determined herein.

Accordingly, the embodiments disclosed herein describe a system that canleverage trace data between vehicles and Wi-Fi to determine a locationfor the Wi-Fi. The embodiments disclosed herein can utilize aParticle-Filter-based method to determine a position of a publicwireless station. The embodiments disclosed herein can also utilize CSIinformation to mitigate an impact of a multipath offset when determiningthe position of the public wireless station. Embodiments disclosedherein can utilize crowd-sourced RSSI and/or ToF measurementsinformation and vehicle displacement information to infer LOS conditionsand mitigate multipath offset. Note that embodiments herein can extendthe Particle-Filter-based method as other ToF data analytics arecontemplated herein.

Technical effects and benefits of the disclosed embodiments include, butare not limited to improved location determinations for Wi-Fi. Inaddition, the improved Wi-Fi location information to locate vehicleswhen GPS is not available or when it is not desirable to enable the GPScapabilities of the vehicle.

The present disclosure may be a system, a method, and/or a computerreadable storage medium. The computer readable storage medium mayinclude computer readable program instructions thereon for causing aprocessor to carry out aspects of the present disclosure.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a mechanically encoded device and any suitablecombination of the foregoing. A computer readable storage medium, asused herein, is not to be construed as being transitory signals per se,such as radio waves or other freely propagating electromagnetic waves,electromagnetic waves propagating through a waveguide or othertransmission media (e.g., light pulses passing through a fiber-opticcable), or electrical signals transmitted through a wire.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

While the above disclosure has been described with reference toexemplary embodiments, it will be understood by those skilled in the artthat various changes may be made and equivalents may be substituted forelements thereof without departing from its scope. In addition, manymodifications may be made to adapt a particular situation or material tothe teachings of the disclosure without departing from the essentialscope thereof. Therefore, it is intended that the present disclosure notbe limited to the particular embodiments disclosed, but will include allembodiments falling within the scope thereof

What is claimed is:
 1. A method for determining a location for one ormore wireless stations or access points, the method comprising:receiving, by a processor, trace data from one or more vehicles;performing, by the processor, a particle filtering analysis on the tracedata; and determining, by the processor, the location for the one ormore wireless stations or access points.
 2. The method of claim 1further comprising determining a location of one or more vehicles usingthe location for the one or more wireless stations or access points. 3.The method of claim 1, wherein the particle filtering analysiscomprises: generating or re-regenerating samples from the trace data;calculating and associating a weight with each of the samples; anditerating the generating or re-regenerating or the samples and thecalculating and associating of the weight until a probabilitydistribution of the samples is obtained.
 4. The method of claim 3,wherein the weight calculation comprises a multipath mitigationdetermination.
 5. The method of claim 4, wherein the multipathmitigation determination is based on Channel State Information.
 6. Themethod of claim 4, wherein the multipath mitigation determination isbased on a received signal strength indication.
 7. The method of claim6, wherein the received signal strength indication is used to infer lineof sight conditions.
 8. A system for determining a location for one ormore wireless stations or access points, the system comprising: one ormore vehicles, each comprising: a first memory, and a first processorcoupled to the first memory; and one or more cloud computers, eachcomprising: a second memory, and a second processor coupled to thesecond memory; wherein each second processor is operable to perform:receiving trace data from the one or more vehicles; performing aparticle filtering analysis on the trace data; and determining thelocation for the one or more wireless stations or access points.
 9. Thesystem of claim 8, wherein each second processor is operable todetermine a location of one or more vehicles using the location for theone or more wireless stations or access points.
 10. The system of claim8, wherein the particle filtering analysis comprises: generating orre-regenerating samples from the trace data; calculating and associatinga weight with each of the samples; and iterating the generating orre-regenerating or the samples and the calculating and associating ofthe weight until a probability distribution of the samples is obtained.11. The system of claim 10, wherein the weight calculation comprises amultipath mitigation determination.
 12. The system of claim 11, whereinthe multipath mitigation determination is based on Channel StateInformation.
 13. The system of claim 11, wherein the multipathmitigation determination is based on a received signal strengthindication.
 14. The system of claim 13, wherein the received signalstrength indication is used to infer line of sight conditions.
 15. Anon-transitory computer readable storage medium having programinstructions for determining a location for one or more wirelessstations or access points embodied therewith, the program instructionsreadable by a processor to cause the processor to perform: receivingtrace data from one or more vehicles; performing a particle filteringanalysis on the trace data; and determining the location for the one ormore wireless stations or access points.
 16. The computer readablestorage medium of claim 15, wherein the program instructions readable bythe processor to cause the processor to determine a location of one ormore vehicles using the location for the one or more wireless stationsor access points.
 17. The computer readable storage medium of claim 15,wherein the particle filtering analysis comprises: generating orre-regenerating samples from the trace data; calculating and associatinga weight with each of the samples; and iterating the generating orre-regenerating or the samples and the calculating and associating ofthe weight until a probability distribution of the samples is obtained.18. The computer readable storage medium of claim 17, wherein the weightcalculation comprises a multipath mitigation determination.
 19. Thecomputer readable storage medium of claim 18, wherein the multipathmitigation determination is based on Channel State Information.
 20. Thecomputer readable storage medium of claim 18, wherein the multipathmitigation determination is based on a received signal strengthindication.